/*
 * Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without modification, are permitted provided that the
 * following conditions are met:
 *
 * Redistributions of source code must retain the above copyright notice, this list of conditions and the following
 * disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the
 * following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of
 * the dreamlu.net developer nor the names of its contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission. Author: Chill 庄骞 (smallchill@163.com)
 */
package org.springblade.modules.system.base.impl;

import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.mp.support.Condition;
import org.springblade.modules.system.base.IVersionBaseService;
import org.springblade.modules.system.entity.Version;
import org.springblade.modules.system.mapper.VersionMapper;
import org.springblade.modules.system.vo.VersionVO;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 服务实现类
 *
 * @author BladeX
 * @since 2021-06-15
 */
@Service
public class VersionBaseServiceImpl extends BaseServiceImpl<VersionMapper, Version> implements IVersionBaseService {

    @Override
    public IPage<VersionVO> selectVersionPage(IPage<VersionVO> page, VersionVO version) {
        return page.setRecords(baseMapper.selectVersionPage(page, version));
    }

    @Override
    public List<Version> listall() {
        return baseMapper.listall();
    }

    @Override
    public boolean addVersion(Version version) {
        version.setLink("www.baidu.com");
        return this.save(version);
    }

    @Override
    public Version getone(Version version) {
        return this.getOne(Condition.getQueryWrapper(version));
    }

    @Override
    public boolean deleteByIds(List<Long> toLongList) {
        return this.deleteLogic(toLongList);
    }

    @Override
    public boolean updateVersion(Version version) {
        return this.updateById(version);
    }

}
